#ifndef FECORE_PRIVATE_H
#define FECORE_PRIVATE_H
#include "fecore.h"

class FeApplication;
class FeCoreImpl: public FeCore {
	Q_OBJECT
public:
	FeCoreImpl(FeApplication *application);
	~FeCoreImpl();

	static FeCoreImpl *instance();

	virtual FeActualDataService *actualDataService() const;

	virtual void registerController(FeController *controller);
	virtual void registerWidgetFactory(FeWidgetFactory *factory);
	virtual void registerDataProvider(FeActualDataProvider *provider);

private:
	FeApplication *application;
};

#endif // FECORE_PRIVATE_H